# app/rag/embedding/base.py

from abc import ABC, abstractmethod
from typing import List


class EmbeddingProvider(ABC):
    """Embedding 模型统一接口"""

    @abstractmethod
    def embed_documents(self, texts: List[str]) -> List[List[float]]:
        """对文档列表生成向量"""
        pass

    @abstractmethod
    def embed_query(self, text: str) -> List[float]:
        """对单条查询生成向量"""
        pass